//
//  BSLNativeUI.h
//  Chamleon-template
//
//  Created by YLW on 15/10/21.
//
//

#import <CDVPlugin.h>
#import "WaitingView.h"
#import "PickDateView.h"


typedef enum {
    NATIVEUISTATEALERT = 0,
    NATIVEUISTATESURE,
    NATIVEUISTATEWAIT,
    NATIVEUISTATEDATE,
    NATIVEUISTATETIME,
    NATIVEUISTATEINPUT,
    NATIVEUISTATESHEET
}NativeUIState;

@interface NativeUIInfo : NSObject

@property (nonatomic , copy)NSString *message;

@property (nonatomic , copy)NSString *title;

@property (nonatomic , strong)NSArray *buttonCaptures;
@property (nonatomic , copy)NSString *buttonCapture;

@property (nonatomic , copy)NSString *tip;

@property (nonatomic , copy)NSString *textFiledStr;

@property (nonatomic , assign)NativeUIState state;

@property (nonatomic , assign)BOOL isVersion8;

@end

@interface BSLNativeUI : CDVPlugin

@property (nonatomic , strong)NativeUIInfo *nativeUI;

@property (nonatomic, strong) NSString *callbackID;

@property (nonatomic , strong)NativeUIWaitInfo *nativeUIWaitInfo;

@property (nonatomic , strong)PickDateView *pickDateView;

@property (nonatomic , strong)WaitingView *waitingView;


- (void)alert:(CDVInvokedUrlCommand *)command;

- (void)confirm:(CDVInvokedUrlCommand *)command;

- (void)showWaiting:(CDVInvokedUrlCommand *)command;

- (void)actionSheet:(CDVInvokedUrlCommand *)command;

- (void)pickDate:(CDVInvokedUrlCommand *)command;

- (void)pickTime:(CDVInvokedUrlCommand *)command;

- (void)prompt:(CDVInvokedUrlCommand *)command;

@end
